Pandas pivot函数

DataFrame.pivot(index=None, 
                columns=None, 
                values=None
               )

返回按给定索引/列值组织的重新构造的DataFrame

根据列值重塑数据(生成一个 "pivot" 表)。使用来自指定索引/列的惟一值来形成结果DataFrame的轴。此函数不支持数据聚合,多个值将导致列中的多索引。

  • indexstrobject, 可选用于制作新frame索引的列。如果为None,则使用现有索引。
  • columnsstrobject位置参数传递给func
  • valuesstr, object 或 之前的列表, 可选于填充新frame值的列。如果未指定,将使用所有剩余的列,并且结果将具有按层次结构索引的列。

返回

DataFrame 返回调整后的DataFrame

例子

import pandas as pd
df = pd.DataFrame({'foo': ['one', 'one', 'one', 'two', 'two',
                            'two'],
                    'bar': ['A', 'B', 'C', 'A', 'B', 'C'],
                    'baz': [1, 2, 3, 4, 5, 6],
                    'zoo': ['x', 'y', 'z', 'q', 'w', 't']})

df

    foo    bar    baz    zoo
0    one    A    1    x
1    one    B    2    y
2    one    C    3    z
3    two    A    4    q
4    two    B    5    w
5    two    C    6    t
df.pivot(index='foo', columns='bar', values='baz')
# 或  df.pivot(index='foo', columns='bar')['baz']

undefined

查看多列数据

df.pivot(index='foo', columns='bar', values=['baz', 'zoo'])

undefined

如果存在重复项,则会引发ValueError

参考

pandas.DataFrame.pivot函数

Update time: 2020-05-25

results matching ""

    No results matching ""